package com.zeny.coding.service;


import com.zeny.coding.dto.PageDto;
import com.zeny.coding.dto.SmsDto;

public interface SmsService {
    /**
     * <h2>分页查询</h2>
     * @param pageInfo
     **/
    void list(PageDto<SmsDto> pageInfo);

    /**
     * <h2>发送验证码</h2>
     * @param smsDto
     **/
    void sendCode(SmsDto smsDto) throws Exception;

    /**
     * <h2>保存验证码</h2>
     * @param smsDto
     **/
    void save(SmsDto smsDto);

    /**
     * <h2>保存并发送验证码</h2>
     * @param smsDto
     **/
    void saveAndSend(SmsDto smsDto) throws Exception;
    
    /**
     * <h2>根据手机号查找验证码</h2>
     * @param smsDto
     **/
    SmsDto findSmsByMobile(SmsDto smsDto);


    /**
     * <h2>根据手机和验证码修改该验证码为已使用状态</h2>
     * @param mobile
     * @param smsCode
     **/
    void updateStatus(String mobile, String smsCode);
}
